package com.有效的字母异位词;

import java.util.HashMap;

public class Solution {
	public boolean isAnagram(String s, String t) {
        if(s==null&&t==null) return true;
        if(s.length()!=t.length()) return false;
        if(s.equals(t)) return false;
        HashMap<Character,Integer> hms = new HashMap<Character,Integer>();
        for(int i =0;i<s.length();i++){
            if(hms.containsKey(s.charAt(i))){
                hms.put(s.charAt(i),hms.get(s.charAt(i))+1);
            }
            else{
                hms.put(s.charAt(i),1);
            }
        }
        HashMap<Character,Integer> hmt = new HashMap<Character,Integer>();
        for(int i =0;i<t.length();i++){
            if(hmt.containsKey(t.charAt(i))){
                hmt.put(t.charAt(i),hmt.get(t.charAt(i))+1);
            }
            else{
                hmt.put(t.charAt(i),1);
            }
        }
       
        for(char key:hms.keySet()){//key小写
            if(hmt.containsKey(key)){
               if(!hmt.get(key).equals(hms.get(key))){
                   return false;
               }
            }
            else{
                return false;
            }
        }
        return true;
    }
	
	public boolean isPalindrome(String s) {
        char[] temp=new char[s.length()];
        int index=0;
        for(int i=0;i<s.length();i++){
            if(s.charAt(i)>='A'&&s.charAt(i)<='Z'){//将大写字母转换成小写字母
                temp[index]=(char) (s.charAt(i)+32);
                index++;
            }
            if(s.charAt(i)<='z'&&s.charAt(i)>='a'){
                temp[index]=s.charAt(i);
                index++;
            }
        }
        int start=0,end=index-1;
        while(start<end){
            if(temp[start]==temp[end]){
                start++;
                end--;
            }
            else{
                return false;
            }
        }
        return true;
    }
	

}
